//
//  JAGAdNativeExpressView.h
//  JAGatherAdDemo
//
//  Created by Yc on 2022/11/30.
//

#import <Foundation/Foundation.h>
#import "JAGFeedAdMeta.h"
#import "JAGHeader.h"

NS_ASSUME_NONNULL_BEGIN

typedef NSObject<JAGFeedAdMeta> JAGMaterialMeta;

@interface JAGNativeFeedAdModel : NSObject

/**
 详解：
 isNativeExpress为Yes时代表模版广告，请读取feedView进行广告填充
 isNativeExpress为No时代表自渲染广告，请读取adMaterialMeta进行广告填充
 feedView与adMaterialMeta目前只存在其中一个，不会同时存在
 */
/// 是否是模版
@property (nonatomic, assign) BOOL isNativeExpress;
/// 当前广告物料归属平台
@property (nonatomic, assign) JAGPlatformType adPlatform;
/// 广告跳转控制器
@property (nonatomic, weak) UIViewController *controller;
/// 广告模版
@property (nonatomic, strong, nullable) UIView *feedView;
/// 广告素材
@property (nonatomic, strong, nullable) JAGMaterialMeta *adMaterialMeta;

@property (nonatomic, strong) id drawAd;

/// 模版渲染
- (void)render;

/// 注册容器（若广告位为快手Draw视屏广告需调用该方法）
- (void)registerContainer;

/// 取消注册（若广告位为快手Draw视屏广告取消容器注册）
- (void)unregisterView;

@end

NS_ASSUME_NONNULL_END
